package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.domain.TreeEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 城市业务对象 p_city
 *
 * @author ruoyi
 * @date 2022-08-10
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("城市业务对象")
public class PCityBo extends TreeEntity<PCityBo> {

    /**
     *
     */
    @ApiModelProperty(value = "", required = true)
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 城市id
     */
    @ApiModelProperty(value = "城市id", required = true)
    @NotNull(message = "城市id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long cityId;

    /**
     * 省市级别
     */
    @ApiModelProperty(value = "省市级别", required = true)
    @NotNull(message = "省市级别不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long level;

    /**
     * 区号
     */
    @ApiModelProperty(value = "区号", required = true)
    @NotBlank(message = "区号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String areaCode;

    /**
     * 名称
     */
    @ApiModelProperty(value = "名称", required = true)
    @NotBlank(message = "名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String name;

    /**
     * 合并名称
     */
    @ApiModelProperty(value = "合并名称", required = true)
    @NotBlank(message = "合并名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String mergerName;

    /**
     * 经度
     */
    @ApiModelProperty(value = "经度", required = true)
    @NotBlank(message = "经度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String lng;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度", required = true)
    @NotBlank(message = "纬度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String lat;

    /**
     * 是否展示
     */
    @ApiModelProperty(value = "是否展示", required = true)
    @NotNull(message = "是否展示不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer isShow;


}
